#ifndef TWOFISH_TYPES_H
#define TWOFISH_TYPES_H

typedef unsigned char byte;
typedef unsigned int word;

void split_word(word value, byte* result, int result_size);
word join_word(byte* values);

#define BLOCK_SIZE 16
#define MAX_KEY_LEN 32
#define EXPANDED_KEY_SIZE 160
#define ROUND 16
typedef struct
{
	int key_size;
	byte orginal_key[MAX_KEY_LEN];
	word expanded_key[EXPANDED_KEY_SIZE / sizeof(word)];
	word s_array[MAX_KEY_LEN/sizeof(word)];
}key_type;

#endif
